package com.sicnu.carrent.test;

import java.time.*;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalField;
import java.util.Date;

public class LocalDateDemo {

    public static void main(String[] args) {
        //Instant和LocalDateTime用于替换以前的Calender和java.util.Date。
        LocalDate d = LocalDate.now(ZoneId.systemDefault()); //获得当前本地日期
        //以下四种方式都可以
        d = LocalDate.of(2018,12,12);
        d = LocalDate.of(2018, Month.DECEMBER,12);
        d = LocalDate.parse("2018-12-12");
        d = LocalDate.parse("2018年12月12日", DateTimeFormatter.ofPattern("yyyy年MM月dd日"));
        LocalTime t = LocalTime.now(ZoneId.systemDefault());//获得当前本地时间
        LocalDateTime dt = LocalDateTime.now(ZoneId.systemDefault());//获得当前的本地日期时间
        dt = LocalDateTime.now(ZoneId.of("Europe/Paris"));
        Date date = new Date();
        //java.util.Date转Instant
        Instant instant = date.toInstant();
        //Instant转换为LocalDateTime
        dt = LocalDateTime.ofInstant(instant,ZoneId.systemDefault());
        System.out.println(dt);
        //LocalDateTime转换为LocalDate
        d = dt.toLocalDate();
        //LocalDateTime转换为LocalTime
        t = dt.toLocalTime();
        //Instant转换为java.util.Date
        date = Date.from(instant);

    }
}
